// pages/job-create-edit/job-create-edit.js
Page({
  data: {
    isEditing: false, // 是否是编辑模式
    isSubmitting: false, // 提交状态
    form: {
      title: '', // 岗位名称
      company: '', // 公司名称
      requirements: '', // 岗位要求
      resumeEmail: '', // 简历投递邮箱
      publisherId: '', // 发布者 ID（系统自动生成）
    },
    jobId: null // 编辑时的岗位 ID
  },

  onLoad(options) {
    //获取用户名
    const username = wx.getStorageSync('username');
    this.setData({
      'form.publisherId': username
    });
    if (options.id) {
      this.setData({
        isEditing: true,
      });
      this.loadJobData(options.id); // 加载岗位数据
    }
  },

  // 加载岗位数据（编辑时）
  loadJobData(jobId) {
    wx.request({
      url: `http://192.168.172.134:5000/api/getPositionById/${jobId}`,
      method: 'GET',
      success: (res) => {
        if (res.data.code === 200) {
          this.setData({
            form: res.data.data,
            jobId: jobId
          });
        } else {
          wx.showToast({
            title: '加载数据失败',
            icon: 'none'
          });
        }
      },
      fail: () => {
        wx.showToast({
          title: '请求失败',
          icon: 'none'
        });
      }
    })
  },

  // 输入事件处理
  onTitleInput(e) {
    this.setData({
      'form.title': e.detail.value
    });
  },

  onCompanyInput(e) {
    this.setData({
      'form.company': e.detail.value
    });
  },

  onRequirementsInput(e) {
    this.setData({
      'form.requirements': e.detail.value
    });
  },

  onDeliveryEmailInput(e) {
    this.setData({
      'form.resumeEmail': e.detail.value
    });
  },

  // 提交表单
  handleSubmit() {
    const { form, isEditing, jobId } = this.data;
    const { title, company, requirements } = form;

    // 表单验证
    if (!title) {
      wx.showToast({
        title: '请输入岗位名称',
        icon: 'none'
      });
      return;
    }

    if (!company) {
      wx.showToast({
        title: '请输入公司名称',
        icon: 'none'
      });
      return;
    }

    if (!requirements) {
      wx.showToast({
        title: '请输入岗位要求',
        icon: 'none'
      });
      return;
    }

    this.setData({
      isSubmitting: true
    });

    const result = {
      ...form,
    };

    wx.request({
      url: isEditing ? 'http://192.168.172.134:5000/api/updatePosition' : 'http://192.168.172.134:5000/api/addPosition',
      method: 'GET',
      data: result,
      success: (res) => {
        if (res.data.code === 200) {
          wx.showToast({
            title: isEditing ? '编辑成功' : '创建成功',
            icon: 'success'
          });
          
          wx.navigateBack(); // 返回上一页
        } else {
          wx.showToast({
            title: '操作失败',
            icon: 'none'
          });
        }
      },
      complete: () => {
        this.setData({
          isSubmitting: false
        });
      }
    });
    
  }
});